/**
 * Copyright (c) 2014- 2015 YCY Group Holding Ltd.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 */
package com.jkwzms.system.permission.entity;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;

import org.hibernate.annotations.CacheConcurrencyStrategy;

import com.jkwzms.common.entity.BaseOracleEntity;
import com.jkwzms.common.repository.support.annotation.EnableQueryCache;

/**
 * 权限表
 * <p>
 * User: Jack Liang
 * <p>
 * Date: 13-2-4 上午9:38
 * <p>
 * Version:1.0.0
 */
@Entity
@Table(name = "sys_permission")
@EnableQueryCache
@SequenceGenerator(name = "seq", sequenceName = "jkwzms_permission_seq", allocationSize = 1)
@org.hibernate.annotations.Cache(usage = CacheConcurrencyStrategy.READ_WRITE)
public class Permission extends BaseOracleEntity<Long> {

    private static final long serialVersionUID = 1L;
    /**
     * 前端显示名称
     */
    private String            name;
    /**
     * 系统中验证时使用的权限标识
     */
    private String            permission;

    /**
     * 详细描述
     */
    private String            description;

    /**
     * 是否显示 也表示是否可用 为了统一 都使用这个
     */
    @Column(name = "is_show")
    private Boolean           show             = Boolean.FALSE;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getPermission() {
        return permission;
    }

    public void setPermission(String permission) {
        this.permission = permission;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public Boolean getShow() {
        return show;
    }

    public void setShow(Boolean show) {
        this.show = show;
    }
}
